<?xml version="1.0" encoding="US-ASCII"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:fo="http://www.w3.org/1999/XSL/Format" version="1.0">

    <xsl:include href="inline.add.xsl"/>

    <xsl:template match="application">
        <xsl:element name="fo:wrapper" use-attribute-sets="inline.charset.sans-serif.properties">
            <xsl:call-template name="inline.charseq"/>
        </xsl:element>
    </xsl:template>

    <xsl:template match="computeroutput">
        <xsl:choose>
            <xsl:when test="parent::screen|parent::code">
                <xsl:call-template name="inline.monoseq"/>
            </xsl:when>
            <xsl:otherwise>
                <xsl:element name="fo:wrapper"
                    use-attribute-sets="inline.charset.sans-serif.properties">
                    <xsl:call-template name="inline.charseq"/>
                </xsl:element>
            </xsl:otherwise>
        </xsl:choose>
    </xsl:template>

    <xsl:template match="guiicon">
        <xsl:element name="fo:wrapper" use-attribute-sets="inline.charset.sans-serif.properties">
            <xsl:call-template name="inline.charseq"/>
        </xsl:element>
    </xsl:template>

    <xsl:template match="filename">
        <xsl:choose>
            <xsl:when test="$filename.hyphenates != '0'">
                <fo:inline xsl:use-attribute-sets="filename.properties">
                    <xsl:call-template name="inline.monoseq"/>
                </fo:inline>
            </xsl:when>
            <xsl:otherwise>
                <xsl:call-template name="inline.monoseq"/>
            </xsl:otherwise>
        </xsl:choose>
    </xsl:template>

    <!-- once you get *filename.hyphenates to work, use this template instead.
    <xsl:template match="filename">
        <xsl:choose>
            <xsl:when test="$filename.hyphenates != '' and count(child::node()) = 0">
                <xsl:call-template name="inline.monoseq">
                    <xsl:with-param name="content">
                        <xsl:call-template name="hyphenate-url">
                            <xsl:with-param name="url" select="."/>
                        </xsl:call-template>
                    </xsl:with-param>
                </xsl:call-template>
            </xsl:when>

            <xsl:otherwise>
                <xsl:call-template name="inline.monoseq"/>
            </xsl:otherwise>

        </xsl:choose>
    </xsl:template>-->

    <xsl:template match="guilabel|guimenu|guimenuitem|guisubmenu">
        <xsl:element name="fo:wrapper" use-attribute-sets="inline.charset.sans-serif.properties">
            <xsl:call-template name="inline.boldseq"/>
        </xsl:element>
    </xsl:template>

    <xsl:template match="guibutton">
        <xsl:element name="fo:inline" use-attribute-sets="guibutton.properties">
            <xsl:call-template name="inline.charseq"/>
        </xsl:element>
    </xsl:template>

    <xsl:template match="keycap|keysym">
        <xsl:element name="fo:wrapper" use-attribute-sets="inline.charset.sans-serif.properties">
            <xsl:call-template name="inline.boldseq"/>
        </xsl:element>
    </xsl:template>

    <xsl:template match="keycombo">
        <xsl:variable name="action" select="@action"/>
        <xsl:variable name="joinchar">
            <xsl:choose>
                <xsl:when test="$action='seq'">
                    <xsl:text>, </xsl:text>
                </xsl:when>
                <xsl:when test="$action='simul'">+</xsl:when>
                <xsl:when test="$action='press'">-</xsl:when>
                <xsl:when test="$action='click'">-</xsl:when>
                <xsl:when test="$action='double-click'">-</xsl:when>
                <xsl:when test="$action='other'"/>
                <xsl:otherwise>+</xsl:otherwise>
            </xsl:choose>
        </xsl:variable>
        <xsl:for-each select="*">
            <xsl:if test="position()>1">
                <xsl:value-of select="$joinchar"/>
            </xsl:if>
            <xsl:apply-templates select="."/>
        </xsl:for-each>
    </xsl:template>

    <xsl:template match="corpname|productname">
        <xsl:param name="contents">
            <xsl:call-template name="inline.charseq"/>
        </xsl:param>
        <xsl:element name="fo:inline" use-attribute-sets="inline.charset.sans-serif.properties">
            <xsl:call-template name="string.upper">
                <xsl:with-param name="string">
                    <xsl:copy-of select="$contents"/>
                </xsl:with-param>
            </xsl:call-template>
        </xsl:element>
    </xsl:template>

    <xsl:template match="lineannotation">
        <xsl:element name="fo:inline">
            <xsl:attribute name="font-style">italic</xsl:attribute>
            <xsl:attribute name="font-family">
                <xsl:value-of select="$body.font.family"/>
            </xsl:attribute>
            <xsl:call-template name="inline.charseq"/>
        </xsl:element>
    </xsl:template>

    <xsl:template match="orgname">
        <xsl:param name="contents">
            <xsl:call-template name="inline.charseq"/>
        </xsl:param>
        <xsl:element name="fo:inline" use-attribute-sets="inline.charset.sans-serif.properties">
            <xsl:call-template name="string.upper">
                <xsl:with-param name="string">
                    <xsl:copy-of select="$contents"/>
                </xsl:with-param>
            </xsl:call-template>
        </xsl:element>
    </xsl:template>

    <xsl:template match="property">
        <xsl:call-template name="inline.monoseq"/>
    </xsl:template>

    <xsl:template match="parameter">
        <xsl:choose>
            <xsl:when test="@condition='mandatory'">
                <xsl:call-template name="inline.bolditalicmonoseq"/>
            </xsl:when>
            <xsl:otherwise>
                <xsl:call-template name="inline.italicmonoseq"/>
            </xsl:otherwise>
        </xsl:choose>
    </xsl:template>

</xsl:stylesheet>
